package mysql8学习.高级.第11章_数据库的设计规范之范式;

public class A_数据库的设计 {
}
/**
 * 数据库的设计
 * 我们在设计数据表的时候，要考虑很多问题。比如:
 *  ● 用户都需要什么数据?需要在数据表中保存哪些数据?
 *  ● 如何保证数据表中数据的正确性，当插入、删除、更新的时候该进行怎样的约束检查?
 *  ● 如何降低数据表的数据冗余度，保证数据表不会因为用户量的增长而迅速扩张?
 *  ● 如何让负责数据库维护的人员更方便地使用数据库?
 *  ● 使用数据库的应用场景也各不相同，可以说针对不同的情况，设计出来的数据表可能千差万别。
 * 现实情况中，面临的场景:
 *  当数据库运行了一段时间之后，我们才发现数据表设计的有问题。
 *  重新调整数据表的结构，就需要做数据迁移, 还有可能影响程序的业务逻辑，以及网站正常的访问。
 *
 * 如果是糟糕的数据库设计可能会造成以下问题:
 * ● 数据冗余、信息重复，存储空间浪费
 * ● 数据更新、插入、删除的异常
 * ● 无法正确表示信息
 * ● 丢失有效信息
 * ● 程序性能差
 *
 * 良好的数据库设计则有以下优点:
 * ● 节省数据的存储空间
 * ● 能够保证数据的完整性
 * ● 方便进行数据库应用系统的开发
 * 总之,开始设置数据库的时候，我们就需要重视数据表的设计。
 * 为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。
 *
 */
